<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=5,IE=9" ><![endif]-->
<!DOCTYPE html>
<html>
<head>
    <title>Grapheditor</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <link rel="stylesheet" type="text/css" href="styles/grapheditor.css">
  <script type="text/javascript">
    // Parses URL parameters. Supported parameters are:
    // - lang=xy: Specifies the language of the user interface.
    // - touch=1: Enables a touch-style user interface.
    // - storage=local: Enables HTML5 local storage.
    // - chrome=0: Chromeless mode.
    var urlParams = (function(url)
    {
      var result = new Object();
      var idx = url.lastIndexOf('?');
      if (idx > 0)
      {
        var params = url.substring(idx + 1).split('&');

        for (var i = 0; i < params.length; i++)
        {
          idx = params[i].indexOf('=');

          if (idx > 0)
          {
            result[params[i].substring(0, idx)] = params[i].substring(idx + 1);
          }
        }
      }
      return result;
    })(window.location.href);

    // Default resources are included in grapheditor resources
    mxLoadResources = false;
  </script>
  <script type="text/javascript" src="../../../../../js/jquery-1.9.1.min.js"></script>
  <script type="text/javascript" src="js/Init.js"></script>
  <script type="text/javascript" src="jscolor/jscolor.js"></script>
  <script type="text/javascript" src="sanitizer/sanitizer.min.js"></script>
  <script type="text/javascript" src="../../../src/js/mxClient.js"></script>
  <script type="text/javascript" src="js/EditorUi.js"></script>
  <script type="text/javascript" src="js/Editor.js"></script>
  <script type="text/javascript" src="js/Sidebar.js"></script>
  <script type="text/javascript" src="js/Graph.js"></script>
  <script type="text/javascript" src="js/Shapes.js"></script>
  <script type="text/javascript" src="js/Actions.js"></script>
  <script type="text/javascript" src="js/Menus.js"></script>
  <script type="text/javascript" src="js/Format.js"></script>
  <script type="text/javascript" src="js/Toolbar.js"></script>
  <script type="text/javascript" src="js/Dialogs.js"></script>
</head>
<body class="geEditor">
  <script type="text/javascript">
    // Extends EditorUi to update I/O action states based on availability of backend
    (function()
    {
      var editorUiInit = EditorUi.prototype.init;

      EditorUi.prototype.init = function()
      {
        editorUiInit.apply(this, arguments);
        this.actions.get('export').setEnabled(false);

        // Updates action states which require a backend
        if (!Editor.useLocalStorage)
        {
          // mxUtils.post(OPEN_URL, '', mxUtils.bind(this, function(req)
          // {
          //  var enabled = req.getStatus() != 404;
          //  this.actions.get('open').setEnabled(enabled || Graph.fileSupport);
          //  this.actions.get('import').setEnabled(enabled || Graph.fileSupport);
          //  this.actions.get('save').setEnabled(enabled);
          //  this.actions.get('saveAs').setEnabled(enabled);
          //  this.actions.get('export').setEnabled(enabled);
          // }));
        }
      };

      // Adds required resources (disables loading of fallback properties, this can only
      // be used if we know that all keys are defined in the language specific file)
      mxResources.loadDefaultBundle = false;
      var bundle = mxResources.getDefaultBundle(RESOURCE_BASE, mxLanguage) ||
        mxResources.getSpecialBundle(RESOURCE_BASE, mxLanguage);

      // Fixes possible asynchronous requests
      mxUtils.getAll([bundle, STYLE_PATH + '/default.xml'], function(xhr)
      {
        // Adds bundle text to resources
        mxResources.parse(xhr[0].getText());

        // Configures the default graph theme
        var themes = new Object();
        themes[Graph.prototype.defaultThemeName] = xhr[1].getDocumentElement();

        // Main
        new EditorUi(new Editor(urlParams['chrome'] == '0', themes));
      }, function()
      {
        document.body.innerHTML = '<center style="margin-top:10%;">Error loading resource files. Please check browser console.</center>';
      });
    })();
  </script>
</body>
</html>
